#include "bsp_led.h"
#include "bsp_gpio.h"

void led_init(void)
{
	gpio_pin_config_t config;
    //IOMUX_SW_MUX->GPIO1_IO03 = 0x5;     /*复用GPIO1_IO03为GPIO模式*/
    //IOMUX_SW_PAD->GPIO1_IO03 = 0x10B0;  /*设置GPIO1_IO03电气特性*/

	IOMUXC_SetPinMux(IOMUXC_GPIO1_IO03_GPIO1_IO03, 0);	/*复用GPIO1_IO03为GPIO模式*/
	IOMUXC_SetPinConfig(IOMUXC_GPIO1_IO03_GPIO1_IO03, 0x10B0); /*设置GPIO1_IO03电气特性*/

    // GPIO1->GDIR = 0x08;                 /*bit3设置为1,GPIO为输出OUTPUT*/
    // GPIO1->DR = 0x0;                    /*GPIO输出低电平*/
	config.directioin = kGPIO_DigitalOutput;	/* gpio output */
	config.outputLogic = 0;
	gpio_init(GPIO1, 3, &config);				/* GPIO1 bit18置位，GPIO为输入模式 */
}

void led_on(void)
{
    //GPIO1->DR &= ~(1<<3);                    /*bit3清零*/
	gpio_pinwrite(GPIO1, 3, 0);				/*bit3清零, 灯亮*/
}

void led_off(void)
{
    //GPIO1->DR |= (1<<3);                    /*bit3设置*/
	gpio_pinwrite(GPIO1, 3, 1);				/*bit3清零, 灯灭*/
}

void led_switch(int led, int status)
{
	switch(led)
	{
		case LED_0:
			if(status == ON)
				gpio_pinwrite(GPIO1, 3, 0);		/*bit3清零, 灯亮*/
			else
				gpio_pinwrite(GPIO1, 3, 1);		/*bit3设置, 灯灭*/
			break;
	}
}